package pe.gob.sunarp.entidad;

import java.io.Serializable;
import javax.persistence.*;
import java.util.Set;


/**
 * The persistent class for the TM_PERFIL database table.
 * 
 */
@Entity
@Table(name="TM_PERFIL")
public class TmPerfil implements Serializable {
	private static final long serialVersionUID = 1L;
	private long perfilId;
	private String abrev;
	private String descripcion;
	private String estado;
	private String fgInterno;
	private String nombre;
	private String nombreTam;
	private Set<PerfilCuenta> perfilCuentas;
	private Set<TmPermisoExt> tmPermisoExts;

    public TmPerfil() {
    }


	@Id
	@GeneratedValue(strategy=GenerationType.AUTO)
	@Column(name="PERFIL_ID", unique=true, nullable=false)
	public long getPerfilId() {
		return this.perfilId;
	}

	public void setPerfilId(long perfilId) {
		this.perfilId = perfilId;
	}


	@Column(nullable=false, length=2)
	public String getAbrev() {
		return this.abrev;
	}

	public void setAbrev(String abrev) {
		this.abrev = abrev;
	}


	@Column(nullable=false, length=50)
	public String getDescripcion() {
		return this.descripcion;
	}

	public void setDescripcion(String descripcion) {
		this.descripcion = descripcion;
	}


	@Column(length=1)
	public String getEstado() {
		return this.estado;
	}

	public void setEstado(String estado) {
		this.estado = estado;
	}


	@Column(name="FG_INTERNO", nullable=false, length=1)
	public String getFgInterno() {
		return this.fgInterno;
	}

	public void setFgInterno(String fgInterno) {
		this.fgInterno = fgInterno;
	}


	@Column(nullable=false, length=35)
	public String getNombre() {
		return this.nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}


	@Column(name="NOMBRE_TAM", length=15)
	public String getNombreTam() {
		return this.nombreTam;
	}

	public void setNombreTam(String nombreTam) {
		this.nombreTam = nombreTam;
	}


	//bi-directional many-to-one association to PerfilCuenta
	@OneToMany(mappedBy="tmPerfil")
	public Set<PerfilCuenta> getPerfilCuentas() {
		return this.perfilCuentas;
	}

	public void setPerfilCuentas(Set<PerfilCuenta> perfilCuentas) {
		this.perfilCuentas = perfilCuentas;
	}
	

	//bi-directional many-to-many association to TmPermisoExt
	@ManyToMany(mappedBy="tmPerfils")
	public Set<TmPermisoExt> getTmPermisoExts() {
		return this.tmPermisoExts;
	}

	public void setTmPermisoExts(Set<TmPermisoExt> tmPermisoExts) {
		this.tmPermisoExts = tmPermisoExts;
	}
	
}